icontheme: Add a trailing / when enumerating resources
authorMatthias Clasen <mclasen@redhat.com>
Mon, 13 Nov 2017 17:12:52 +0000 (12:12 -0500)
committerMatthias Clasen <mclasen@redhat.com>
Mon, 13 Nov 2017 17:13:42 +0000 (12:13 -0500)
This avoids extra string copies in GResource.

gtk/gtkicontheme.c

index fb14e1094aeadee3eb13b929a2d591d2e523422f..1dc44a5567539c4f5ba4ba5982ce6ed96f6cdf2e 100644 (file)
@@ -3359,7 +3359,9 @@ theme_subdir_load (GtkIconTheme *icon_theme,
     { 
       for (d = icon_theme->priv->resource_paths; d; d = d->next)
         {
-          full_dir = g_build_filename ((const gchar *)d->data, subdir, NULL);
+          /* Force a trailing / here, to avoid extra copies in GResource */
+          full_dir = g_build_filename ((const gchar *)d->data, subdir, " ", NULL);
+          full_dir[strlen (full_dir) - 1] = '\0';
           dir = g_new0 (IconThemeDir, 1);
           dir->type = type;
           dir->is_resource = TRUE;